The Confluent White Papers Library


Using Visual Thought for Software Development:
"The CASE for Visual Thought"


Confluent, Inc.
400 Spear Street, Suite 207
San Francisco, CA 94107-1686
415-764-1000 Tel * 415-764-1008 Fax
http://www.confluent.com/



Abstract

Visual Thought is a diagramming and flowcharting tool that is frequently used as a software design aid and CASE-substitute. Because it optimizes diagramming, supports multiple software development methodologies, and is an order of magnitude less expensive than many CASE tools, Visual Thought is ideal for software developers who simply want to design software quickly and at low cost.



Contents




Introduction

Visual Thought quickly and efficiently creates diagrams. We refer to a diagram as a drawing that communicates information about relationships between things. The essential activity of a diagramming tool is drawing shapes and connecting them with rubberbanding lines. Moving connected shapes preserves the connections.

Visual Thought contains over a hundred shapes for general- and special-purpose drawing, organized into a library of dozens of drag-and-drop palettes. It has a host of functions to perform precise graphical manipulation of objects. It has multimedia extensions that allow you to import images and record sounds to annotate your drawings. The flexible file-linking mechanism lets you attach arbitrary files or programs to objects, then run them. These features, and many others, make Visual Thought a powerful general-purpose communication tool.

We've paid a great deal of attention to making Visual Thought easy to use. Unlike conventional illustration, drafting, or drawing tools, Visual Thought was designed to move ideas and concepts onto the screen quickly and to help people who aren't graphic designers create professional-looking graphics.

One of Visual Thought's ideal applications is software design, because a large part of software engineering is performing analysis and design tasks that involve drawing software diagrams. Visual Thought supports the software development process by providing shapes and palettes for many methodologies, such as Rumbaugh, Booch, Objectory, HP Fusion, Entity-Relationship, Gane & Sarson (dataflow), and others. You can also mix methodologies or even capture your own by creating your own set of drag-and-drop palettes.

Drawing software diagrams with Visual Thought is typically quick and efficient. Since it was designed for diagramming, Visual Thought will help you create diagrams more quickly than CASE tools can, and at much less expense. If you are one of the many people who find that you are mainly using the diagramming features of CASE tools because of their complexity and usage problems, why not instead use a tool optimized for diagramming?

And because Visual Thought is an order of magnitude less expensive than many CASE tools, you can often outfit an entire development group with Visual Thought for the price of one CASE tool license.




The Role of Visual Thought in Software Development

Visual Thought is typically used in two major roles to support software development:


CASE-Substitution

Developers are becoming increasingly disenchanted with the "magic bullet" of CASE that has never materialized. Expectations of tremendous productivity gains by reducing software development from a "black art" to a repeatable science have not yet been fulfilled. The complexities and inflexibility of current CASE tools have helped to bring about this disappointment. Further, the massive expense of CASE tools often put them out of the reach of all but the richest organizations.

In this environment, many developers have decided that their primary needs are:


CASE-Enhancement (Design Prototyping)

The complexities inherent in most CASE tools tend not to make using them very swift. Their expense also makes them a scarce resource. Consequently, developers often would like to test ideas for designs by prototyping them using an inexpensive, easy-to-use tool, prior to fully implementing the designs in a CASE tool.


For both CASE-substitution and CASE-enhancement, Visual Thought is an ideal tool. In the sections below, we will explore why.




Benefits of Using Visual Thought for Software Development

The benefits of using and deploying Visual Thought for software development are many. The most important ones are present below.


Software Methodology Support

Visual Thought is a methodology-neutral tool because it supports many different methodologies and can freely mix and match components. Because of this, Visual Thought will likely support the methodology you need, and you will not risk the tool becoming useless to you if you need to switch methodologies or even use a custom methodology.
Supports the most common methodologies
Visual Thought supports the notations used by most of the major methodologies: Rumbaugh, Booch, Objectory, HP Fusion, Gane & Sarson (dataflow), Entity-Relationship, and others.

The library of over a hundred shapes is arrayed in over twenty drag-and-drop palettes devoted largely to software methodologies.

Visual Thought's graphical abilities do the rest. For example, you can add text to shapes and connections with any font or style, choose from almost fifty types of arrowheads, and exercise complete control over line widths, colors, and shadows. Connections clip continuously and exactly to the perimeters of shapes, no matter how complex the shape.

Flexibility to adapt to mixed or custom methodologies
Extending, mixing, or customizing methodology notations is usually as simple as creating a new drag-and-drop palette. Because of the large selection of shapes and connections, as well as great graphical flexibility, it is very likely that you can synthesize any new notation from components already available in Visual Thought.

Freedom from rigidly-enforced rules
Visual Thought's freedom from rigid semantics means that you are not required to go through complex motions to do simple things. Visual Thought doesn't get in your way.

You can also "change the rules" when necessary to accomplish the central aim of designing software. For example, if a methodology does not support multiple inheritance, a typical CASE tool that implements semantics will not let you create two superclasses for a given class. But with Visual Thought, you need only draw the connection.


Optimized Diagramming, or "Speed-of-Use"

Visual Thought is a diagramming tool, whose essential feature is the ability to draw shapes and rubberbanding connections between the shapes. This is the basic requirement for any CASE tool that presents graphical information. But because Visual Thought was optimized for diagramming, it gives you a much richer graphical environment than a CASE tool can. Further, Visual Thought was designed from the ground up to be both powerful yet also easy-to-use. The features below, and many more, dramatically raise Visual Thought's "speed-of-use": the ability to speed and enhance your diagramming.

Extensive shape library
Visual Thought's library of over a hundred shapes means you have a shape for almost any purpose. The library includes special shapes used by specific methodologies, such as the famous Booch cloud and the Jacobson actor.

Visual Thought's shapes have the added benefit of being dynamic: any shape can be changed to any other shape at any time. This feature vastly eases the process of editing software diagrams; for example, you can create your diagrams using generic shapes, then substitute the required shapes later when you've made more progress in specifying them.

Free-form, editable, WYSIWYG drag-and-drop palettes
Visual Thought has over twenty drag-and-drop palettes, of which about fifteen are devoted solely to capturing software methodologies. Visual Thought's palettes are unique in that they are completely free-form, and are truly WYSIWYG. Anything you can draw in Visual Thought, you can place on a palette. Drag-and-drop a 2"x2" red star from a palette, and a 2"x2" red star appears in your document.

By contrast, the palettes of other diagramming or flowcharting tools inexplicably use tiny incomprehensible icons to represent objects. These icons are arranged in grid formations that make the task of recognizing objects even harder. Why other palettes do this is a mystery.

You can edit these palettes as you wish, or even create your own. Creating your own palettes is very simple. You can switch palettes to View mode in which you draw as you normally would in Visual Thought. Then a single click transforms the palette from View mode back to the drag-and-drop Palette mode.

Intelligent, rubberbanding connections
Click and drag from one shape to the next to create a connection. Move the shapes, and the connection follows. Connections clip precisely to the perimeters of shapes, no matter how complex the shape. You can create single- or multiple-segment connections, and make them straight or curved. Choose from any of nearly fifty arrowheads. Vary line widths, dash patterns, and colors at will. Text labels attached to connections can be "slid" along the connection by dragging a slider.

The flexibility and power of Visual Thought's connections ensure support of whichever methodologies you may choose.

Multiple undo and redo
100-level multiple undo and redo makes it easy to recover from mistakes, or to play "what-if" games with drawings. Anything you can do in Visual Thought, you can undo, and then redo.
Multi-object manipulation techniques
Visual Thought's Inspector dialog permits live, active examination and editing of single or multiple objects. The Selection dialog permits selection and deselection of objects by their type. These two dialogs, when used together, provide powerful multi-object manipulation techniques.

For example, let's say you've created a large diagram with hundreds of connections, and you suddenly realize you need to add arrowheads to all of them. Any other program would force you to select and edit them one by one, an extremely frustrating and time-consuming task. In Visual Thought, on the other hand, you simply need bring up the Selection dialog, ask it to select all connections, then move to the Inspector dialog and click on the checkbox to turn on arrowheads.

"Live" WYSIWYG
Most drawing tools do not redraw while the user drags objects, instead opting to display a blank gray rectangular outline. Visual Thought, by contrast, updates objects while they are dragged. Objects look "live" during dragging operations, providing immediate feedback and increasing drawing productivity.

Non-Graphical Extensions
Visual Thought incorporates certain extensions beyond its graphical capabilities that are useful for software development.

You can record sounds and associate the sounds with objects to provide voice annotations and explanations of your design diagrams without cluttering them with excessive text.

You can display images in shapes by importing them or using the built in screen grabbing utility. This feature allows you to incorporate corporate logos or other special graphics into design documents.

Visual Thought can attach arbitrary files to objects. The type of a file and the application that runs it is determined by a user-modifiable dictionary in Visual Thought. This flexible file attachment capability lets you:

The "plug-in" translator and filter technology allows you to export and filter any information available in Visual Thought diagrams to create new files or send output to other programs. You can use this feature to:


Integration with other Tools

The Visual Thought solution is one that doesn't have to work alone. Most frequently, Visual Thought is used in conjunction with a document processor such as FrameMaker to provide a drawing and publishing solution. Visual Thought is used to create presentation and documentation graphics, and these graphics are transferred to FrameMaker for documentation and publishing.

Visual Thought has the ability to export to over thirty export formats, including EPSI (Encapsulated PostScript Interchange), MIF (FrameMaker Interchange Format), GIF, TIFF, JPEG, XWD, SunRaster, PICT, and many others.

The multitude of export formats ensures ready availability of a usable export format for almost any need, and in fact, Visual Thought generates output for the most popular document processors, including FrameMaker, Interleaf, the Island Series, Microsoft Word, WordPerfect, and many others.

Visual Thought also incorporates "plug-in" export translator technology. Specifying a translation program from any format known to Visual Thought to any new format allows Visual Thought to export directly to that new format, ensuring that any required export format likely can be quickly added if not already available.

Visual Thought also exports its own file format as text. Since this file format (Visual Thought Export, or VTX) contains all the object information in a Visual Thought document, including the connectivity between objects, a translator can be defined to convert to any other format requiring that semantic information. With the appropriate translators, Visual Thought can generate header files, code templates, HTML and clickable image maps for World Wide Web pages, and input files for CASE tools, batch simulators, and proprietary programs.

You can create professional graphics with Visual Thought, knowing that you won't have any problems using the output with other tools in your organization.


Low Risk and Low Cost of Adoption

The experience of evaluating, purchasing, deploying, and using Visual Thought is characterized by low risk.
Low Financial Risk
Visual Thought is inexpensive. The list price of Visual Thought starts as low as US$695, with volume discounts potentially bringing the prices much lower. At these prices, the financial risk of purchasing the product is very low relative to other possible sources of risk, such as technological risk or resource utilization risk. Fortunately, Visual Thought minimizes these other sources of risk, too.

Through Confluent's Volume and Site Licensing Programs, organizations purchasing large volumes can gain dramatic reductions in the cost per desktop.

Visual Thought's price advantage is magnified when compared to CASE tools, which are frequently an order of magnitude more expensive. The comparison is not between apples and oranges, either. A customer said it best: "Visual Thought provides 30% of the functionality of a CASE tool for 10% of the price."

Low Resource Risk
Because it has been optimized for diagramming and for ease-of-use (see "Optimized Diagramming" above), Visual Thought is very easy to learn. The typical productive start-up time for the average user is a few hours. Because of a comprehensive, friendly on-line help system that uses Visual Thought documents to teach how to use Visual Thought, external training is typically not required at all.

These factors conduce to an easy introduction and deployment of Visual Thought to any organization.

Low Technology Risk
As previously mentioned, Visual Thought supports multiple software development methodologies, and components of these methodologies can be merged or modified to create mixed and custom methodologies. This means that an organization adopting Visual Thought will never suffer from being locked into any particular methodology. Switching methodologies or creating a hybrid in-house methodology is simple.

Visual Thought is also amenable to successful evaluation. Unlike CASE tools, which are frequently so complex that a thorough and useful evaluation requires actually implementing a real project (when it's too late to influence a purchase decision), Visual Thought can be evaluated quickly, and purchased or waived with full confidence in a correct decision.

Unlike many software engineering products, which often are unproductively used because of their complexity, Visual Thought (a diagramming tool) is difficult to misuse or improperly use. The risk, therefore, of expending time, resources, and dollars on Visual Thought and subsequently wasting them is low.


Enterprise Advantages

Particular advantages accrue to organizations deploying Visual Thought enterprise-wide.
Multiple Platforms
Visual Thought was designed from inception to be a diagramming solution for heterogeneous computer networks. Versions running natively on UNIX are available now, and versions for the "Wintel" and Macintosh families of platforms are scheduled for introduction in 1996. This makes Visual Thought the only diagramming or flowcharting product available for both UNIX and Windows.

The availability of Visual Thought on all platforms relevant to a heterogeneous computing environment is a significant advantage for most corporations. Adopting Visual Thought ensures that time and resources are not wasted in a futile attempt to cobble together a consistent diagramming and flowcharting solution using separate pieces from multiple vendors. Nor is productivity lost in the inevitable file transfers and paradigm shifts in running multiple other diagramming tools (if they exist on the desired platform) while trying to use such a piecemeal solution.

Visual Thought, moreover, retains a consistent look-and-feel across all platforms. Training time is reduced because any information imparted in a training session is instantly applicable across all platforms. Productivity also is boosted because employees are free to run Visual Thought on the platform that most suits their work styles.

Since Visual Thought's look-and-feel (e.g, Windows, Motif) is selectable at runtime, it is perfectly feasible to mandate a single look and feel for all desktops, regardless of platform.

Visual Thought's consistent look-and-feel and availability on all platforms of interest to a corporation with heterogeneous networks provide a truly comprehensive diagramming and flowcharting solution that no other vendor can claim.

Multiple Applications
One of Visual Thought's strengths is its broad spectrum of uses. There are very few programs anywhere that can be used for as many purposes or by as many people as Visual Thought. Here is a partial listing of the ways you can use Visual Thought. With so many ways Visual Thought can be used, almost everybody in a corporation can benefit from using it. For example: Visual Thought can be used throughout most departments of a corporation, including development, information systems, sales and marketing, training and documentation, and others. The more Visual Thought is used, the greater the productivity payoff.
Scalability
The Visual Thought solution scales well because of its applicability to a broad spectrum of uses. As the number of people with access to Visual Thought increases, the number of different ways Visual Thought can be used increases. This characteristic allows an enterprise to highly leverage its adoption of Visual Thought.




The Case against CASE

This section presents a discussion of why Visual Thought can be a more productive, cost-effective, and lower-risk solution to software engineering than CASE tools.


A Purely Hypothetical CASE

Let's consider a hypothetical situation in a corporate development environment. Does this situation sound somewhat familiar? While this may be a worst-case situation, we've found that most developers have run up against one or more problems presented in this "hypothetical" scenario.

It's one reason why CASE isn't a "magic bullet," and we invite you to explore how Visual Thought, the premier UNIX diagramming and flowcharting tool, can offer you a simple, efficient, cost-effective alternative.


CASE-by-Case Comparison with Visual Thought

Visual Thought has a number of important advantages over traditional CASE tools. You've already seen them in previous sections, but it's worthwhile to restate the principal advantages here with emphasis on the differences between Visual Thought and CASE tools.

The Visual Thought solution is characterized by support for multiple and custom methodologies, powerful drawing facilities, low cost, and low risk.

Multiple, flexible methodologies
Typical CASE tools are excessively rigid in forcing the user to follow formalism. Often, these products force users to fill out many details before giving back any useful information (such as a software diagram). Also, many design methodologies are more comprehensive and detailed than many users require. A CASE tool that follows any given methodology may require users to provide burdensome or even unavailable details. Further, typical CASE tools do not allow the user to mix and match desired elements of multiple methodologies, or extend methodologies.

Visual Thought, by contrast, suffers from none of these limitations. By virtue of its emphasis on the graphical portion of a design (namely, the software diagrams), Visual Thought encourages concentration on the architecture of a software project, not the details. Because Visual Thought does not enforce syntactic rules on diagrams, users are free to mix and match software methodologies or even create custom methodologies. Such custom methodologies can easily be implemented on a set of drag-and-drop palettes for deployment site-wide.

Effective and efficient drawing
Visual Thought is optimized for drawing diagrams. CASE tools are not. A user of Visual Thought can easily be an order of magnitude more productive drawing software diagrams with Visual Thought than with a typical CASE tool, as well as becoming productive sooner.
Less complexity
In their quest for the holy grail of automating software development, CASE tools often suffer from "feature bloat" and excessive complexity. Most of our customers have found that they don't use all, or even most of, the features of CASE tools. In this case, why should you purchase or spend time learning about unused features?

The typical story we hear is that management mandates the use of a full CASE tool. Then the developers end up using 30% of the tool's features. Which 30%? The diagramming.

Lower price
With list prices starting as low as US$695, Visual Thought is an order of magnitude less expensive than many CASE tools. This cost difference allows an organization to make Visual Thought available to all software developers for the same cost as providing just a few copies of a CASE tool to a few developers. If a primary goal of tool support is to facilitate communication between and among workgroups, how can it help if there aren't enough licenses of the tool for everyone to use?

The cost/benefit ratio of Visual Thought relative to CASE is also favorable. A customer said it best: "Visual Thought provides 30% of the functionality of a CASE tool for 10% of the price."

Lower risk
The evaluation, purchase, and deployment of a CASE tool is often a high-risk endeavor.

Because of a CASE tool's complexity, a thorough and real-life evaluation usually is impossible without implementing a real project -- not usually feasible using a vendor's typical 30-day evaluation license! Show-stopping problems often are not uncovered until after a purchase. Training and startup time or developers is high.

Because of the CASE tool's expense, the break-even point when the productivity payoff equals the cost of the tool is quite high.

A CASE tool will often not provide exactly the details of a methodology that you want. The problem is exacerbated with single-methodology CASE tools, which present significant problems if you need to switch methodologies.

Visual Thought shares none of these problems. It can be evaluated quickly and easily. Training and startup time are low. Its low cost means that the initial investment in the tool is earned back quickly. And because it supports multiple and custom methodologies, Visual Thought is always useful, even if you switch methodologies or need to create your own.


In any CASE... (Conclusions)

Visual Thought is not a comprehensive, dedicated CASE tool. It does not support code generation or reverse engineering, and it does not provide any means to enforce syntax and semantics on objects that are drawn. What Visual Thought does provide is the ability to rapidly produce diagrams that facilitate communication between members of a software development group.

Where rigid adherence to a methodology is desired and money is no object, Visual Thought may not be the ideal choice. Yet its power and speed for software diagramming truly address one of the greatest problems facing today's software developers: the difficulty in rapidly creating and communicating software designs in a cost-effective manner.

The beauty of many good software methodologies is in how they structure the software development process, and in how the phases of analysis and design "fit together" to amplify and cross-check each other. However, one reason why CASE tools aren't a "magic bullet" is that their realities, whether through faulty implementation or massive extra complexity or some other cause, often destroy the conceptual simplicity and purity of good methodologies.

The critical question to ask yourself when comparing Visual Thought to a CASE tool is: "Am I sure that the actual productivity gains of a CASE tool exceed the productivity gains of Visual Thought by enough to justify the differences in price and risk?"

We are not trying to say that the promise of CASE can't be fulfilled, just that in most cases, not yet. We invite you to continue the search.

In the meantime, why not use Visual Thought?




Confluent Clients Using Visual Thought for Software Development

The following organizations world-wide are just a few of Confluent's clients in many industry segments using Visual Thought for their software development needs.




Recent Visual Thought Reviews


© 1996, 1997 Confluent, Inc. All rights reserved.


Confluent, Inc. * 400 Spear Street, Suite 207 * San Francisco, CA 94105
800-780-2838 and 415-764-1000 tel * 415-764-1008 fax * info@confluent.com

Please send comments about this web site to:

webmaster@confluent.com